package com.jie.langlangmall.portal.service;

import com.jie.langlangmall.model.SmsCoupon;
import com.jie.langlangmall.model.SmsCouponHistory;
import com.jie.langlangmall.portal.domain.CartPromotionItem;
import com.jie.langlangmall.portal.domain.SmsCouponHistoryDetail;

import java.util.List;

/**
 * @Author Jie
 * @Date 2024/11/26
 * @Email 3217998214@qq.com
 * @Description 用户优惠券信息
 */
public interface UmsMemberCouponService {

    /**
     * 领取优惠券
     *
     * @param couponId
     */
    void add(Long couponId);

    /**
     * 获取历史优惠券
     *
     * @param useStatus
     * @return
     */
    List<SmsCouponHistory> listHistory(Integer useStatus);

    /**
     * 获取用户优惠券列表
     *
     * @param useStatus
     * @return
     */
    List<SmsCoupon> list(Integer useStatus);

    /**
     * 根据购物车信息获取可用优惠券
     *
     * @param cartPromotionItemList
     * @param type
     * @return
     */
    List<SmsCouponHistoryDetail> listCart(List<CartPromotionItem> cartPromotionItemList, Integer type);

    /**
     * 获取商品相关优惠券
     *
     * @param productId
     * @return
     */
    List<SmsCoupon> listByProduct(Long productId);
}
